<?php 
	namespace app\admin\controller;
	use think\Db;
	class Product extends Base{
		public function index(){
			return $this->fetch();
		}
		public function productlist(){
			//获取所有产品
			$pro=Db::name('product')->order('pro_price','Desc')->paginate(3,false, [ 'type'=>'Bootstrap2' ]);
			// var_dump($pro);die;
			$prolist=$pro->items();
			//编号
			$current=$pro->currentPage();
			$limit=$pro->listRows();
			$con=($current-1)*$limit;
			$a=$con+1;
			$this->assign('a',$a);
			$this->assign('prolist',$prolist);
			$this->assign("pro",$pro);
			return $this->fetch();
		}
		public function productadd(){
			//添加功能
			if($_POST){
				$data=array(
					'pro_title'=>$this->request->post('pro_title'),
					'pro_des'=>$this->request->post('pro_des'),
					'pro_price'=>$this->request->post('pro_price'),
					'pro_isnew'=>$this->request->post('pro_isnew'),
				);
				//获取上传的文件
				$file=request()->file('pro_pic');
				$info=$file->move('uploads');//上传到根目录的uploads文件夹
				if($info){
					$data['pro_pic']=$info->getSaveName();//获取图片路径+图片名称
				}else{
					$this->error($this->getError);
				}
				//执行添加功能
				$res=Db::name('product')->insert($data);
				if($res){
					$this->success('添加成功','/admin/product/productlist');
				}else{
					$this->error('数据执行有误');
				}
			}
			return $this->fetch();
		}
		public function productedit($pid){
			//编辑功能
			$pro=Db::name('product')->where("pro_id",$pid)->find();
			$this->assign('pro',$pro);
			if($_POST){
				$data=array(
					'pro_title'=>$this->request->post('pro_title'),
					'pro_des'=>$this->request->post('pro_des'),
					'pro_price'=>$this->request->post('pro_price'),
					'pro_isnew'=>$this->request->post('pro_isnew'),
				);
				//接收隐藏域
				$pro_id=$this->request->post('pro_id');
				if(request()->file()){//如果有图片上传
					$file=request()->file('pro_pic');
					$info=$file->move('uploads');
					if($info){//上传成功
						//删除旧的图片
						$old_arr=Db::name('product')->where("pro_id",$pro_id)->find();
						// var_dump($old_arr['pro_pic']);die;
						$old_pic=str_replace('\\','/',$old_arr['pro_pic']);//把获取到图片路径的\更改为/
						$path='./upload/'.$old_pic;//旧照片的路径
						if(!empty($old_pic)&&file_exists($path)){//数据库图片路径字段不为空而且文件夹目录下有这个图片文件
							unlink($path);
						}
						$data['pro_pic']=$info->getSaveName();//获取新图片上传的路径
					}else{
						$this->error('数据执行有误');
					}
				}
				//执行编辑功能
				$res=Db::name('product')->where("pro_id",$pro_id)->update($data);
				if($res){
					$this->success('编辑成功','/admin/product/productlist');
				}else{
					$this->error('数据执行有误');
				}
			}
			return $this->fetch();
		}
		public function productdel($pid){
			//旧照片路径
			$old_arr=Db::name('product')->where("pro_id",$pid)->find();
			$old_pic=str_replace('\\','/',$old_arr['pro_pic']);//把获取到图片路径的\更改为/
			$path='./uploads/'.$old_pic;//旧照片的路径
			//执行删除功能
			$res=Db::table('product')->where("pro_id",$pid)->delete();
			if($res){
				//删除旧的图片
				if(!empty($old_pic)&&file_exists($path)){//数据库图片路径字段不为空而且文件夹目录下有这个图片文件
					unlink($path);
				}
				$this->success('删除成功','/admin/product/productlist');
			}else{
				$this->error('数据执行有误');
			}
		}
	}